package ar.uade.fain.ai.tpo.model;

public class Caracteristica {

	private Long id;
	private String descripcion;
	private Double tiempoCoccion;
	private Integer complejidad;
	private boolean alHorno;
	private Categoria categoria;
	public Caracteristica () {
		super();
	}


	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getDescripcion() {
		return descripcion;
	}

	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}

	public Double getTiempoCoccion() {
		return tiempoCoccion;
	}

	public void setTiempoCoccion(Double tiempoCoccion) {
		this.tiempoCoccion = tiempoCoccion;
	}

	public Integer getComplejidad() {
		return complejidad;
	}

	public void setComplejidad(Integer complejidad) {
		this.complejidad = complejidad;
	}

	public boolean isAlHorno() {
		return alHorno;
	}

	public void setAlHorno(boolean alHorno) {
		this.alHorno = alHorno;
	}
	
	public Categoria getCategoria() {
		return categoria;
	}

	public void setCategoria(Categoria categoria) {
		this.categoria = categoria;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + (alHorno ? 1231 : 1237);
		result = prime * result
				+ ((categoria == null) ? 0 : categoria.hashCode());
		result = prime * result
				+ ((complejidad == null) ? 0 : complejidad.hashCode());
		result = prime * result
				+ ((descripcion == null) ? 0 : descripcion.hashCode());
		result = prime * result + ((id == null) ? 0 : id.hashCode());
		result = prime * result
				+ ((tiempoCoccion == null) ? 0 : tiempoCoccion.hashCode());
		return result;
	}

	
	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Caracteristica other = (Caracteristica) obj;
		if (alHorno != other.alHorno)
			return false;
		if (categoria == null) {
			if (other.categoria != null)
				return false;
		} else if (!categoria.equals(other.categoria))
			return false;
		if (complejidad == null) {
			if (other.complejidad != null)
				return false;
		} else if (!complejidad.equals(other.complejidad))
			return false;
		if (descripcion == null) {
			if (other.descripcion != null)
				return false;
		} else if (!descripcion.equals(other.descripcion))
			return false;
		if (id == null) {
			if (other.id != null)
				return false;
		} else if (!id.equals(other.id))
			return false;
		if (tiempoCoccion == null) {
			if (other.tiempoCoccion != null)
				return false;
		} else if (!tiempoCoccion.equals(other.tiempoCoccion))
			return false;
		return true;
	}
}
